home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2004 #11 / Amiga Plus CD - 2004 - No. 11.iso / AmiSoft / Misc / emu / p-interp.lha / p-interp-0.5 / Makefile < prev    next >
Makefile  |  2001-06-10  |  16KB  |  350 lines

  1. # P-Code interpreter (to run the apple pascal system)
  2. # Copyright (C) 2000 Mario Klebsch
  3. #
  4. # $Id: Makefile,v 1.13 2001/06/10 20:40:04 mario Exp $
  5. #
  6. # This program is free software; you can redistribute it and/or modify
  7. # it under the terms of the GNU General Public License as published by
  8. # the Free Software Foundation; either version 2 of the License, or
  9. # (at your option) any later version.
  10. #
  11. # This program is distributed in the hope that it will be useful,
  12. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. # GNU General Public License for more details.
  15. #
  16. # You should have received a copy of the GNU General Public License
  17. # along with this program; if not, write to the Free Software
  18. # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  19. #
  20. #
  21. # $Log: Makefile,v $
  22. # Revision 1.13  2001/06/10 20:40:04  mario
  23. # Long integers mit BCD-Arithmetic implementiert, Divisionsroutine fehlt noch.
  24. #
  25. # Revision 1.12  2001/06/07 21:16:24  mario
  26. # *** empty log message ***
  27. #
  28. # Revision 1.11  2001/06/06 23:14:19  mario
  29. # Turtlegraphics wird jetzt mit einem #define aktiviert
  30. #
  31. # Revision 1.10  2001/05/27 16:21:48  mario
  32. # - Neue Kommandozeilenoption zum Tracen einer einzigen Prozedur
  33. #
  34. # - Auch beim Disassemblieren  von Segment 0 werden jetzt die
  35. #   korrekten Prozedurnamen angezeigt.
  36. #
  37. # Revision 1.9  2001/05/26 16:51:55  mario
  38. # Optimierung beim Compiler aktiviert.
  39. #
  40. # Revision 1.8  2001/05/26 15:13:29  mario
  41. # Diverse kleine Fehler behoben, fehlende #includes, Labels ohne Statement
  42. # dahinter, ...
  43. #
  44. # Revision 1.7  2001/05/23 21:32:57  mario
  45. # kleinere Änderungen an den Regeln
  46. #
  47. # Revision 1.6  2001/05/23 21:16:41  mario
  48. # Turtlegraphics wurde als eigener Prozess ausgelagert.
  49. #
  50. # Revision 1.5  2001/05/20 20:35:22  mario
  51. # svolio ruft die Disk-I/O-Routinen jetzt direkt auf.
  52. #
  53. # Revision 1.4  2001/05/20 20:14:40  mario
  54. # Neues Gerät PRINTER: implementiert
  55. #
  56. # Revision 1.3  2001/05/20 13:47:56  mario
  57. # Alternative Quellen für das Image eingetragen
  58. #
  59. # Revision 1.2  2001/05/20 13:12:02  mario
  60. # CVS-Idents und Logs eingefügt
  61. #
  62. #
  63.  
  64. PREFIX=/usr/local
  65.  
  66. SRCS=interpreter.c Memory.c Stack.c Sets.c Array.c native6502.c Longint.c \
  67.     UnitIo.c Term.c Diskio.c Printer.c Search.c turtlegr.c ptrace.c
  68. OBJS=$(SRCS:%.c=%.o)
  69.  
  70. X11=/opt/X11
  71.  
  72. X11_INCLUDE=$(X11)/include
  73. X11_LIB=$(X11)/lib
  74.  
  75. #DEFINES=-DAPPLE_1_3
  76. DEFINES=-DTURTLEGRAPHICS
  77.  
  78. #IMAGES=ftp://ftp.apple.asimov.net/pub/apple_II/images/utility/programming/apple_pascal
  79. #IMAGES=ftp://ftp.calvacom.fr/pub/apple_II/images/utility/programming/apple_pascal
  80. IMAGES=ftp://ftp.mayn.de/pub/mirrors/apple.asimov.net/programming/apple_pascal
  81.  
  82. INCLUDES=-I$(X11_INCLUDE)
  83. CFLAGS=-Wall -g $(INCLUDES) $(DEFINES) # -O3 # -Dinline= -pedantic
  84.  
  85. MAKEDEPEND=gccmakedep
  86.  
  87. BINS=ucsd svolio svolcvt xturtleserver
  88. all: $(BINS)
  89.  
  90. install: all
  91.     cp $(BINS) $(PREFIX)/bin/.
  92.     cp ucsd.1 svolio.1 svolcvt.1 $(PREFIX)/man/man1/.
  93.  
  94. Bin2C: Bin2C.c
  95.     $(CC) $(CFLAGS) -o $@ $<
  96.  
  97. svolcvt: svolcvt.c
  98.     $(CC) $(CFLAGS) -o $@ $<
  99.  
  100. system.charset.h: system.charset Bin2C
  101.     (echo '/* WARNING: this file is not GPLed, do not redistribute */';\
  102.     ./Bin2C system.charset )>system.charset.h
  103.  
  104. xturtleserver: xturtleserver.c system.charset.h
  105.     $(CC) -o $@ -g xturtleserver.c -I$(X11_INCLUDE) -L$(X11_LIB) -R$(X11_LIB) -lXt -lX11 -lm
  106.  
  107. ucsd: $(OBJS)
  108.     $(CC) -o $@ $(OBJS) -lncurses_g -lm
  109.  
  110. svolio: svolio.o Diskio.o Memory.o
  111.     $(CC) -o $@ $+ -lcurses
  112.  
  113. depend: 
  114.     $(MAKEDEPEND) -DMAKEDEPEND $(INCLUDES) $(DEFINES) $(SRCS) svolio.c svolcvt.c xturtleserver.c
  115.  
  116. clean:
  117.     -rm -f *.o system.charset.h *.tmp *~ TAGS tags *.bak ucsd.core
  118.  
  119. distclean: clean
  120.     -rm -f $(BINS) Bin2C system.charset apple_pascal_*.dsk \
  121.     work.svol system.svol
  122.     touch tmp.c
  123.     $(MAKEDEPEND) tmp.c
  124.     -rm -f tmp.c
  125.  
  126. system.charset: apple_pascal_1.dsk svolio
  127.     ./svolio apple_pascal_1.dsk $@ > $@.tmp 
  128.     mv $@.tmp $@
  129.  
  130. apple_pascal: apple_pascal_0.dsk apple_pascal_1.dsk \
  131.     apple_pascal_2.dsk apple_pascal_3.dsk
  132.  
  133. apple_pascal_0.dsk:
  134.     ncftpget $(IMAGES)/$@.gz
  135.     gzip -d $@.gz
  136.  
  137. apple_pascal_1.dsk:
  138.     ncftpget $(IMAGES)/$@.gz
  139.     gzip -d $@.gz
  140.  
  141. apple_pascal_2.dsk:
  142.     ncftpget $(IMAGES)/$@.gz
  143.     gzip -d $@.gz
  144.  
  145. apple_pascal_3.dsk:
  146.     ncftpget $(IMAGES)/$@.gz
  147.     gzip -d $@.gz
  148.  
  149. work.svol system.svol: buildimages.sh ucsd apple_pascal_1.dsk \
  150.     apple_pascal_2.dsk apple_pascal_3.dsk
  151.     sh buildimages.sh
  152.  
  153. # DO NOT DELETE
  154. interpreter.o: interpreter.c /usr/include/assert.h \
  155.  /usr/include/features.h /usr/include/sys/cdefs.h \
  156.  /usr/include/gnu/stubs.h /usr/include/stdio.h \
  157.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  158.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  159.  /usr/include/bits/types.h /usr/include/libio.h \
  160.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \
  161.  /usr/include/unistd.h /usr/include/bits/posix_opt.h \
  162.  /usr/include/bits/confname.h /usr/include/getopt.h \
  163.  /usr/include/stdlib.h /usr/include/sys/types.h /usr/include/time.h \
  164.  /usr/include/endian.h /usr/include/bits/endian.h \
  165.  /usr/include/sys/select.h /usr/include/bits/select.h \
  166.  /usr/include/bits/sigset.h /usr/include/sys/sysmacros.h \
  167.  /usr/include/alloca.h /usr/include/ctype.h /usr/include/string.h \
  168.  /usr/include/setjmp.h /usr/include/bits/setjmp.h /usr/include/math.h \
  169.  /usr/include/bits/huge_val.h /usr/include/bits/mathdef.h \
  170.  /usr/include/bits/mathcalls.h \
  171.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/float.h \
  172.  /usr/include/sys/stat.h /usr/include/bits/stat.h \
  173.  /usr/include/sys/time.h /usr/include/bits/time.h /usr/include/fcntl.h \
  174.  /usr/include/bits/fcntl.h version.h psystem.h Memory.h Stack.h Sets.h \
  175.  Array.h Diskio.h Term.h pcode.h
  176. Memory.o: Memory.c /usr/include/stdio.h /usr/include/features.h \
  177.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  178.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  179.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  180.  /usr/include/bits/types.h /usr/include/libio.h \
  181.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \
  182.  /usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \
  183.  /usr/include/string.h psystem.h pcode.h Memory.h
  184. Stack.o: Stack.c /usr/include/stdio.h /usr/include/features.h \
  185.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  186.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  187.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  188.  /usr/include/bits/types.h /usr/include/libio.h \
  189.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \
  190.  /usr/include/assert.h psystem.h Memory.h Stack.h
  191. Sets.o: Sets.c psystem.h Sets.h
  192. Array.o: Array.c /usr/include/stdio.h /usr/include/features.h \
  193.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  194.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  195.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  196.  /usr/include/bits/types.h /usr/include/libio.h \
  197.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h psystem.h \
  198.  Memory.h Array.h
  199. native6502.o: native6502.c /usr/include/stdio.h \
  200.  /usr/include/features.h /usr/include/sys/cdefs.h \
  201.  /usr/include/gnu/stubs.h \
  202.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  203.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  204.  /usr/include/bits/types.h /usr/include/libio.h \
  205.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \
  206.  /usr/include/stdlib.h /usr/include/sys/types.h /usr/include/time.h \
  207.  /usr/include/endian.h /usr/include/bits/endian.h \
  208.  /usr/include/sys/select.h /usr/include/bits/select.h \
  209.  /usr/include/bits/sigset.h /usr/include/sys/sysmacros.h \
  210.  /usr/include/alloca.h /usr/include/bits/time.h psystem.h pcode.h \
  211.  Memory.h Array.h Term.h
  212. UnitIo.o: UnitIo.c /usr/include/stdio.h /usr/include/features.h \
  213.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  214.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  215.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  216.  /usr/include/bits/types.h /usr/include/libio.h \
  217.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h psystem.h \
  218.  Memory.h Diskio.h Term.h
  219. Term.o: Term.c /usr/include/fcntl.h /usr/include/features.h \
  220.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  221.  /usr/include/bits/fcntl.h /usr/include/sys/types.h \
  222.  /usr/include/bits/types.h \
  223.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  224.  /usr/include/time.h /usr/include/endian.h /usr/include/bits/endian.h \
  225.  /usr/include/sys/select.h /usr/include/bits/select.h \
  226.  /usr/include/bits/sigset.h /usr/include/sys/sysmacros.h \
  227.  /usr/include/stdlib.h /usr/include/alloca.h /usr/include/stdio.h \
  228.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  229.  /usr/include/libio.h /usr/include/_G_config.h \
  230.  /usr/include/bits/stdio_lim.h /usr/include/unistd.h \
  231.  /usr/include/bits/posix_opt.h /usr/include/bits/confname.h \
  232.  /usr/include/getopt.h /usr/include/string.h /usr/include/curses.h \
  233.  /usr/include/unctrl.h /usr/include/term.h /usr/include/termios.h \
  234.  /usr/include/bits/termios.h /usr/include/sys/ttydefaults.h \
  235.  /usr/include/assert.h /usr/include/sys/time.h \
  236.  /usr/include/bits/time.h /usr/include/sys/stat.h \
  237.  /usr/include/bits/stat.h /usr/include/sys/socket.h \
  238.  /usr/include/bits/socket.h \
  239.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/limits.h \
  240.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/syslimits.h \
  241.  /usr/include/limits.h /usr/include/bits/posix1_lim.h \
  242.  /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
  243.  /usr/include/bits/posix2_lim.h /usr/include/bits/sockaddr.h \
  244.  /usr/include/asm/socket.h /usr/include/asm/sockios.h \
  245.  /usr/include/netinet/in.h /usr/include/stdint.h \
  246.  /usr/include/bits/wordsize.h /usr/include/bits/in.h \
  247.  /usr/include/bits/byteswap.h psystem.h Memory.h Term.h
  248. Diskio.o: Diskio.c /usr/include/unistd.h /usr/include/features.h \
  249.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  250.  /usr/include/bits/posix_opt.h /usr/include/bits/types.h \
  251.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  252.  /usr/include/bits/confname.h /usr/include/getopt.h \
  253.  /usr/include/stdio.h \
  254.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  255.  /usr/include/libio.h /usr/include/_G_config.h \
  256.  /usr/include/bits/stdio_lim.h /usr/include/stdlib.h \
  257.  /usr/include/sys/types.h /usr/include/time.h /usr/include/endian.h \
  258.  /usr/include/bits/endian.h /usr/include/sys/select.h \
  259.  /usr/include/bits/select.h /usr/include/bits/sigset.h \
  260.  /usr/include/sys/sysmacros.h /usr/include/alloca.h \
  261.  /usr/include/fcntl.h /usr/include/bits/fcntl.h /usr/include/assert.h \
  262.  /usr/include/string.h /usr/include/sys/stat.h \
  263.  /usr/include/bits/stat.h psystem.h Memory.h Diskio.h
  264. Printer.o: Printer.c /usr/include/stdio.h /usr/include/features.h \
  265.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  266.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  267.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  268.  /usr/include/bits/types.h /usr/include/libio.h \
  269.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h psystem.h \
  270.  Memory.h
  271. Search.o: Search.c /usr/include/stdio.h /usr/include/features.h \
  272.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  273.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  274.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  275.  /usr/include/bits/types.h /usr/include/libio.h \
  276.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \
  277.  /usr/include/string.h psystem.h Memory.h Array.h
  278. turtlegr.o: turtlegr.c /usr/include/math.h /usr/include/features.h \
  279.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  280.  /usr/include/bits/huge_val.h /usr/include/bits/mathdef.h \
  281.  /usr/include/bits/mathcalls.h \
  282.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/float.h \
  283.  /usr/include/unistd.h /usr/include/bits/posix_opt.h \
  284.  /usr/include/bits/types.h \
  285.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  286.  /usr/include/bits/confname.h /usr/include/getopt.h \
  287.  /usr/include/stdio.h \
  288.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  289.  /usr/include/libio.h /usr/include/_G_config.h \
  290.  /usr/include/bits/stdio_lim.h /usr/include/sys/types.h \
  291.  /usr/include/time.h /usr/include/endian.h /usr/include/bits/endian.h \
  292.  /usr/include/sys/select.h /usr/include/bits/select.h \
  293.  /usr/include/bits/sigset.h /usr/include/sys/sysmacros.h \
  294.  /usr/include/sys/socket.h /usr/include/bits/socket.h \
  295.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/limits.h \
  296.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/syslimits.h \
  297.  /usr/include/limits.h /usr/include/bits/posix1_lim.h \
  298.  /usr/include/bits/local_lim.h /usr/include/linux/limits.h \
  299.  /usr/include/bits/posix2_lim.h /usr/include/bits/sockaddr.h \
  300.  /usr/include/asm/socket.h /usr/include/asm/sockios.h \
  301.  /usr/include/sys/wait.h /usr/include/bits/waitflags.h \
  302.  /usr/include/bits/waitstatus.h /usr/include/bits/siginfo.h psystem.h \
  303.  pcode.h Memory.h Stack.h
  304. ptrace.o: ptrace.c /usr/include/stdio.h /usr/include/features.h \
  305.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  306.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  307.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  308.  /usr/include/bits/types.h /usr/include/libio.h \
  309.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \
  310.  /usr/include/string.h ptrace.h
  311. svolio.o: svolio.c /usr/include/stdio.h /usr/include/features.h \
  312.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  313.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  314.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  315.  /usr/include/bits/types.h /usr/include/libio.h \
  316.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \
  317.  /usr/include/unistd.h /usr/include/bits/posix_opt.h \
  318.  /usr/include/bits/confname.h /usr/include/getopt.h \
  319.  /usr/include/ctype.h /usr/include/endian.h /usr/include/bits/endian.h \
  320.  psystem.h Memory.h Diskio.h
  321. svolcvt.o: svolcvt.c /usr/include/stdio.h /usr/include/features.h \
  322.  /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \
  323.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  324.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  325.  /usr/include/bits/types.h /usr/include/libio.h \
  326.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \
  327.  /usr/include/unistd.h /usr/include/bits/posix_opt.h \
  328.  /usr/include/bits/confname.h /usr/include/getopt.h
  329. xturtleserver.o: xturtleserver.c /usr/include/stdio.h \
  330.  /usr/include/features.h /usr/include/sys/cdefs.h \
  331.  /usr/include/gnu/stubs.h \
  332.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stddef.h \
  333.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/stdarg.h \
  334.  /usr/include/bits/types.h /usr/include/libio.h \
  335.  /usr/include/_G_config.h /usr/include/bits/stdio_lim.h \
  336.  /usr/include/math.h /usr/include/bits/huge_val.h \
  337.  /usr/include/bits/mathdef.h /usr/include/bits/mathcalls.h \
  338.  /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.1/include/float.h \
  339.  /opt/X11/include/X11/Intrinsic.h /opt/X11/include/X11/Xlib.h \
  340.  /usr/include/sys/types.h /usr/include/time.h /usr/include/endian.h \
  341.  /usr/include/bits/endian.h /usr/include/sys/select.h \
  342.  /usr/include/bits/select.h /usr/include/bits/sigset.h \
  343.  /usr/include/sys/sysmacros.h /opt/X11/include/X11/X.h \
  344.  /opt/X11/include/X11/Xfuncproto.h /opt/X11/include/X11/Xosdefs.h \
  345.  /opt/X11/include/X11/Xutil.h /opt/X11/include/X11/Xresource.h \
  346.  /usr/include/string.h /opt/X11/include/X11/Core.h \
  347.  /opt/X11/include/X11/Composite.h /opt/X11/include/X11/Constraint.h \
  348.  /opt/X11/include/X11/Object.h /opt/X11/include/X11/RectObj.h \
  349.  /opt/X11/include/X11/StringDefs.h
  350.